package com.hejia.alauda.service;

import com.hejia.alauda.entity.SplashScreen;
import com.hejia.alauda.entity.SplashScreenSchedule;
import com.hejia.alauda.utils.Pager;

/**
 * 启动画面服务
 * @author hyr
 *
 */
public interface SplashScreenService {

	/**
	 * 查询启动画面排期
	 * @param isShow	是否处于显示期间
	 * @param description	描述
	 * @param pager		分页
	 * @return	启动画面排期列表
	 */
	Pager<SplashScreenSchedule> findSplashScreenSchedules(
			boolean isShow, String description, Pager<SplashScreenSchedule> pager);

	/**
	 * 添加启动画面排期
	 * @param schedule	启动画面排期
	 */
	void addSplashScreenSchedule(SplashScreenSchedule schedule);

	/**
	 * 查询启动画面排期
	 * @param id	启动画面排期ID
	 * @return
	 */
	SplashScreenSchedule findSplashScreenScheduleById(Long id);

	/**
	 * 更新启动画面排期
	 * @param schedule
	 */
	void updateSplashScreenSchedule(SplashScreenSchedule schedule);

	/**
	 * 删除启动画面排期
	 * @param id	启动画面排期ID
	 */
	void deleteSplashScreenScheduleById(Long id);

	/**
	 * 查询启动画面
	 * @param device	客户端设备
	 * @param width		宽度
	 * @param height	高度
	 * @param dpi		dpi
	 * @return
	 */
	SplashScreen findSplashScreen(String device, Integer width, Integer height, Integer dpi);

}
